[INFO] cloning repository https://github.com/sim82/aoc2019
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sim82/aoc2019" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsim82%2Faoc2019", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsim82%2Faoc2019'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3f60ca1ef3993d59d8e5e491f84511f34ff34ee6
[INFO] checking sim82/aoc2019 against master#82310651b93a594a3fd69015e1562186a080d94c for pr-145770
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsim82%2Faoc2019" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/sim82/aoc2019
[INFO] finished tweaking git repo https://github.com/sim82/aoc2019
[INFO] tweaked toml for git repo https://github.com/sim82/aoc2019 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/sim82/aoc2019 on toolchain 82310651b93a594a3fd69015e1562186a080d94c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+82310651b93a594a3fd69015e1562186a080d94c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/sim82/aoc2019 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+82310651b93a594a3fd69015e1562186a080d94c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded termion v1.5.4
[INFO] [stderr]   Downloaded pathfinding v2.0.1
[INFO] [stderr]   Downloaded wasi v0.7.0
[INFO] [stderr]   Downloaded num-traits v0.2.10
[INFO] [stderr]   Downloaded smallvec v1.0.0
[INFO] [stderr]   Downloaded either v1.5.3
[INFO] [stderr]   Downloaded indexmap v1.3.0
[INFO] [stderr]   Downloaded ctrlc v3.1.3
[INFO] [stderr]   Downloaded rand v0.7.2
[INFO] [stderr]   Downloaded cc v1.0.48
[INFO] [stderr]   Downloaded getrandom v0.1.13
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+82310651b93a594a3fd69015e1562186a080d94c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cf8e9dced4dc2a5cd3937865902030640e5e96165f8f0e65f0cd194e43b25abf
[INFO] running `Command { std: "docker" "start" "-a" "cf8e9dced4dc2a5cd3937865902030640e5e96165f8f0e65f0cd194e43b25abf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cf8e9dced4dc2a5cd3937865902030640e5e96165f8f0e65f0cd194e43b25abf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cf8e9dced4dc2a5cd3937865902030640e5e96165f8f0e65f0cd194e43b25abf", kill_on_drop: false }`
[INFO] [stdout] cf8e9dced4dc2a5cd3937865902030640e5e96165f8f0e65f0cd194e43b25abf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+82310651b93a594a3fd69015e1562186a080d94c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 00c3cfb0e5790d6ed0721bb1dfd6705801c8587405decfbb89fe085acd27b058
[INFO] running `Command { std: "docker" "start" "-a" "00c3cfb0e5790d6ed0721bb1dfd6705801c8587405decfbb89fe085acd27b058", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.66
[INFO] [stderr]    Compiling autocfg v0.1.7
[INFO] [stderr]     Checking cfg-if v0.1.10
[INFO] [stderr]    Compiling getrandom v0.1.13
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]    Compiling nix v0.14.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.6
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking either v1.5.3
[INFO] [stderr]     Checking numtoa v0.1.0
[INFO] [stderr]     Checking fixedbitset v0.2.0
[INFO] [stderr]     Checking smallvec v1.0.0
[INFO] [stderr]     Checking permutohedron v0.2.4
[INFO] [stderr]     Checking itertools v0.8.2
[INFO] [stderr]    Compiling num-traits v0.2.10
[INFO] [stderr]    Compiling indexmap v1.3.0
[INFO] [stderr]     Checking c2-chacha v0.2.3
[INFO] [stderr]     Checking termion v1.5.4
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking rand_chacha v0.2.1
[INFO] [stderr]     Checking rand v0.7.2
[INFO] [stderr]     Checking pathfinding v2.0.1
[INFO] [stderr]     Checking ctrlc v3.1.3
[INFO] [stderr]     Checking aoc2019 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `pathfinding::prelude::dijkstra`
[INFO] [stdout]  --> src/graph.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use pathfinding::prelude::dijkstra;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/graph.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/graph.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::FromIterator`
[INFO] [stdout]  --> src/intcode.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::iter::FromIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::intcode::Io2`
[INFO] [stdout]  --> src/test.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::intcode::Io2;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module
[INFO] [stdout]  --> src/lib.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | mod test;
[INFO] [stdout]   | ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::intcode::*`
[INFO] [stdout]  --> src/test.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use super::intcode::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module
[INFO] [stdout]  --> src/lib.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | mod test;
[INFO] [stdout]   | ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `permutohedron::LexicalPermutation`
[INFO] [stdout]  --> src/test.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use permutohedron::LexicalPermutation;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module
[INFO] [stdout]  --> src/lib.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | mod test;
[INFO] [stdout]   | ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver`, `Sender`, and `channel`
[INFO] [stdout]  --> src/test.rs:4:23
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::mpsc::{channel, Receiver, Sender};
[INFO] [stdout]   |                       ^^^^^^^  ^^^^^^^^  ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module
[INFO] [stdout]  --> src/lib.rs:5:1
[INFO] [stdout]   |
[INFO] [stdout] 5 | mod test;
[INFO] [stdout]   | ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pathfinding::prelude::dijkstra`
[INFO] [stdout]  --> src/graph.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use pathfinding::prelude::dijkstra;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/graph.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]  --> src/graph.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::str::FromStr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::FromIterator`
[INFO] [stdout]  --> src/intcode.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::iter::FromIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver` and `Sender`
[INFO] [stdout]  --> src/test.rs:4:32
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::mpsc::{channel, Receiver, Sender};
[INFO] [stdout]   |                                ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/test.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |         for i in 0..2 {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `max_seq` is assigned to, but never used
[INFO] [stdout]   --> src/test.rs:64:17
[INFO] [stdout]    |
[INFO] [stdout] 64 |         let mut max_seq = [0; 5];
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_max_seq` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/test.rs:67:18
[INFO] [stdout]    |
[INFO] [stdout] 67 |             for (i, setting) in seq.iter().enumerate() {
[INFO] [stdout]    |                  ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `max_seq` is never read
[INFO] [stdout]   --> src/test.rs:79:17
[INFO] [stdout]    |
[INFO] [stdout] 79 |                 max_seq = seq.clone();
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::slice::Iter`
[INFO] [stdout]  --> examples/part8.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::slice::Iter;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pathfinding::directed::dijkstra`
[INFO] [stdout]  --> examples/termion_fun.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use pathfinding::directed::dijkstra;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pathfinding::prelude::dijkstra`
[INFO] [stdout]  --> examples/termion_fun.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use pathfinding::prelude::dijkstra;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pathfinding::prelude::fringe`
[INFO] [stdout]  --> examples/termion_fun.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use pathfinding::prelude::fringe;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand::prelude::*`
[INFO] [stdout]  --> examples/termion_fun.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use rand::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> examples/termion_fun.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Stdin`
[INFO] [stdout]   --> examples/termion_fun.rs:10:15
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::io::{Stdin, Write};
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Sender`
[INFO] [stdout]   --> examples/termion_fun.rs:11:42
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::sync::mpsc::{channel, Receiver, Sender};
[INFO] [stdout]    |                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Keys`
[INFO] [stdout]   --> examples/termion_fun.rs:13:22
[INFO] [stdout]    |
[INFO] [stdout] 13 | use termion::input::{Keys, TermRead};
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Stdin`
[INFO] [stdout]  --> examples/part15.rs:6:15
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::io::{Stdin, Write};
[INFO] [stdout]   |               ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `termion::event::Key`
[INFO] [stdout]  --> examples/part15.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use termion::event::Key;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `termion::input::TermRead`
[INFO] [stdout]  --> examples/part15.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use termion::input::TermRead;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]  --> examples/part25.rs:9:15
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::io::{Read, Write};
[INFO] [stdout]   |               ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `channel`
[INFO] [stdout]   --> examples/part25.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::sync::mpsc::{channel, Receiver};
[INFO] [stdout]    |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `parent`
[INFO] [stdout]   --> examples/part6.rs:45:23
[INFO] [stdout]    |
[INFO] [stdout] 45 |         .map(|(child, parent)| input.len_to(child, "COM"))
[INFO] [stdout]    |                       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_parent`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::Read`
[INFO] [stdout]  --> examples/part15.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::io::Read;
[INFO] [stdout]   |     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `location`
[INFO] [stdout]    --> examples/part25.rs:256:30
[INFO] [stdout]     |
[INFO] [stdout] 256 |                         Some(location) => {
[INFO] [stdout]     |                              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_location`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `map_size`
[INFO] [stdout]    --> examples/part25.rs:330:17
[INFO] [stdout]     |
[INFO] [stdout] 330 |             let map_size = self.map.draw(&self.current_coord, &mut self.stdout);
[INFO] [stdout]     |                 ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_map_size`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `stdin` is never read
[INFO] [stdout]   --> examples/part15.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | struct RepairBot {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     stdin: std::io::Stdin,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable statement
[INFO] [stdout]   --> examples/part16.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |           return;
[INFO] [stdout]    |           ------ any code following this expression is unreachable
[INFO] [stdout] ...
[INFO] [stdout] 65 | /     {
[INFO] [stdout] 66 | |         let mut input: Vec<i32> = input_msg().collect();
[INFO] [stdout] 67 | |         for i in 0..100 {
[INFO] [stdout] 68 | |             input = intermingle2(input);
[INFO] [stdout] ...  |
[INFO] [stdout] 75 | |         println!("");
[INFO] [stdout] 76 | |     }
[INFO] [stdout]    | |_____^ unreachable statement
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> examples/part25.rs:301:13
[INFO] [stdout]     |
[INFO] [stdout] 301 |             write!(self.log_file, "{}", self.input_buf);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 301 |             let _ = write!(self.log_file, "{}", self.input_buf);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> examples/part16.rs:67:13
[INFO] [stdout]    |
[INFO] [stdout] 67 |         for i in 0..100 {
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `intermingle` is never used
[INFO] [stdout]   --> examples/part16.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn intermingle(input: Vec<i32>) -> Vec<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `pattern` should have an upper case name
[INFO] [stdout]  --> examples/part16.rs:4:11
[INFO] [stdout]   |
[INFO] [stdout] 4 |     const pattern: [i32; 4] = [0, 1, 0, -1];
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_upper_case_globals)]` on by default
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]   |
[INFO] [stdout] 4 -     const pattern: [i32; 4] = [0, 1, 0, -1];
[INFO] [stdout] 4 +     const PATTERN: [i32; 4] = [0, 1, 0, -1];
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `input` should have an upper case name
[INFO] [stdout]   --> examples/part16.rs:99:11
[INFO] [stdout]    |
[INFO] [stdout] 99 |     const input : &str = "597734197946315604128867465500492107148541070660280810320965917595751456802949957707412049551833956401035273718...
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]    |
[INFO] [stdout] 99 -     const input : &str = "59773419794631560412886746550049210714854107066028081032096591759575145680294995770741204955183395640103527371801225795364363411455113236683168088750631442993123053909358252440339859092431844641600092736006758954422097244486920945182483159023820538645717611051770509314159895220529097322723261391627686997403783043710213655074108451646685558064317469095295303320622883691266307865809481566214524686422834824930414730886697237161697731339757655485312568793531202988525963494119232351266908405705634244498096660057021101738706453735025060225814133166491989584616948876879383198021336484629381888934600383957019607807995278899293254143523702000576897358";
[INFO] [stdout] 99 +     const INPUT : &str = "59773419794631560412886746550049210714854107066028081032096591759575145680294995770741204955183395640103527371801225795364363411455113236683168088750631442993123053909358252440339859092431844641600092736006758954422097244486920945182483159023820538645717611051770509314159895220529097322723261391627686997403783043710213655074108451646685558064317469095295303320622883691266307865809481566214524686422834824930414730886697237161697731339757655485312568793531202988525963494119232351266908405705634244498096660057021101738706453735025060225814133166491989584616948876879383198021336484629381888934600383957019607807995278899293254143523702000576897358";
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `VecDeque`
[INFO] [stdout]  --> examples/part23.rs:4:33
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::collections::{HashMap, VecDeque};
[INFO] [stdout]   |                                 ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: include macro expected single expression in source
[INFO] [stdout]  --> examples/code23.int:1:2
[INFO] [stdout]   |
[INFO] [stdout] 1 | 3,62,1001,62,11,10,109,2229,105,1,0,2093,2165,1216,1505,789,1660,758,1693,2064,1183,602,2198,1759,950,1445,1117,1014,1280,2134,1379,851,1...
[INFO] [stdout]   |  ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[deny(incomplete_include)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/part11.rs:107:45
[INFO] [stdout]     |
[INFO] [stdout] 107 |         (&mut context, &mut painter as &mut Io2).run();
[INFO] [stdout]     |                                             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 107 |         (&mut context, &mut painter as &mut dyn Io2).run();
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/part11.rs:116:45
[INFO] [stdout]     |
[INFO] [stdout] 116 |         (&mut context, &mut painter as &mut Io2).run();
[INFO] [stdout]     |                                             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 116 |         (&mut context, &mut painter as &mut dyn Io2).run();
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `io`
[INFO] [stdout]   --> examples/part23.rs:69:17
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let mut io = (&output_tx, &input_rx, addr.clone());
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_io`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&aoc2019::monitoring::Point` instead of cloning the inner type
[INFO] [stdout]    --> examples/part10.rs:124:31
[INFO] [stdout]     |
[INFO] [stdout] 124 |             shot.insert(*point.clone());
[INFO] [stdout]     |                               ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> examples/part7.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 51 |     for i in 0..2 {
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `max_seq` is assigned to, but never used
[INFO] [stdout]   --> examples/part7.rs:64:13
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let mut max_seq = [0; 5];
[INFO] [stdout]    |             ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_max_seq` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> examples/part7.rs:67:14
[INFO] [stdout]    |
[INFO] [stdout] 67 |         for (i, setting) in seq.iter().enumerate() {
[INFO] [stdout]    |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `max_seq` is never read
[INFO] [stdout]   --> examples/part7.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |             max_seq = seq.clone();
[INFO] [stdout]    |             ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: maybe it is overwritten before being read?
[INFO] [stdout]    = note: `#[warn(unused_assignments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> examples/part18_2.rs:173:9
[INFO] [stdout]     |
[INFO] [stdout] 173 |     let data = data18();
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> examples/part23.rs:69:13
[INFO] [stdout]    |
[INFO] [stdout] 69 |         let mut io = (&output_tx, &input_rx, addr.clone());
[INFO] [stdout]    |             ----^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> examples/part23.rs:62:37
[INFO] [stdout]    |
[INFO] [stdout] 62 | fn start(addr: i64, code: Vec<i64>, mut idle: Arc<Mutex<i64>>) -> Nic {
[INFO] [stdout]    |                                     ----^^^^
[INFO] [stdout]    |                                     |
[INFO] [stdout]    |                                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `max_seq` is assigned to, but never used
[INFO] [stdout]   --> examples/part7.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |     let mut max_seq = [0; 5];
[INFO] [stdout]    |             ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: consider using `_max_seq` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> examples/part23.rs:93:9
[INFO] [stdout]    |
[INFO] [stdout] 93 |     let mut idle_tmp = Arc::new(Mutex::new(0i64));
[INFO] [stdout]    |         ----^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> examples/part7.rs:109:18
[INFO] [stdout]     |
[INFO] [stdout] 109 |             for (i, ios) in &mut state.iter_mut().enumerate() {
[INFO] [stdout]     |                  ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `max_seq` is never read
[INFO] [stdout]    --> examples/part7.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |             max_seq = seq.clone();
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `max_seq` is assigned to, but never used
[INFO] [stdout]    --> examples/part7.rs:155:13
[INFO] [stdout]     |
[INFO] [stdout] 155 |     let mut max_seq = [0; 5];
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_max_seq` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `max_seq` is never read
[INFO] [stdout]    --> examples/part7.rs:192:13
[INFO] [stdout]     |
[INFO] [stdout] 192 |             max_seq = seq.clone();
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x`
[INFO] [stdout]    --> examples/part7.rs:171:19
[INFO] [stdout]     |
[INFO] [stdout] 171 |             .map(|x| (Context::new(code71()).break_on_output(), false))
[INFO] [stdout]     |                   ^ help: if this is intentional, prefix it with an underscore: `_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> examples/part23.rs:94:9
[INFO] [stdout]    |
[INFO] [stdout] 94 |     let mut idle = idle_tmp.clone();
[INFO] [stdout]    |         ----^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `out_bufs`
[INFO] [stdout]    --> examples/part23.rs:149:13
[INFO] [stdout]     |
[INFO] [stdout] 149 |     let mut out_bufs = HashMap::<i64, smallvec::SmallVec<[i64; 3]>>::new();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_out_bufs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/part17.rs:145:44
[INFO] [stdout]     |
[INFO] [stdout] 145 |         (&mut context, &mut camera as &mut Io2).run();
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 145 |         (&mut context, &mut camera as &mut dyn Io2).run();
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> examples/part23.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 |     let mut out_bufs = HashMap::<i64, smallvec::SmallVec<[i64; 3]>>::new();
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `join_handle` is never read
[INFO] [stdout]   --> examples/part23.rs:59:5
[INFO] [stdout]    |
[INFO] [stdout] 55 | struct Nic {
[INFO] [stdout]    |        --- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 59 |     join_handle: JoinHandle<()>,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `code23` is never used
[INFO] [stdout]    --> examples/part23.rs:180:4
[INFO] [stdout]     |
[INFO] [stdout] 180 | fn code23() -> Vec<i64> {
[INFO] [stdout]     |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/part17.rs:160:40
[INFO] [stdout]     |
[INFO] [stdout] 160 |         (&mut context, &mut io as &mut Io2).run();
[INFO] [stdout]     |                                        ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 160 |         (&mut context, &mut io as &mut dyn Io2).run();
[INFO] [stdout]     |                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `while` condition
[INFO] [stdout]   --> examples/part5.rs:32:19
[INFO] [stdout]    |
[INFO] [stdout] 32 |             while (modenum != 0) {
[INFO] [stdout]    |                   ^            ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 32 -             while (modenum != 0) {
[INFO] [stdout] 32 +             while modenum != 0 {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> examples/part5.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 |     input: &'a mut std::io::BufRead,
[INFO] [stdout]   |                    ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     input: &'a mut dyn std::io::BufRead,
[INFO] [stdout]   |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> examples/part5.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn default(input: &'a mut std::io::BufRead) -> Self {
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 13 |     pub fn default(input: &'a mut dyn std::io::BufRead) -> Self {
[INFO] [stdout]    |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> examples/part23.rs:166:21
[INFO] [stdout]     |
[INFO] [stdout] 166 |                     nics[nic_id].tx.send(send_bufs[i][1]);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 166 |                     let _ = nics[nic_id].tx.send(send_bufs[i][1]);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> examples/part17.rs:63:49
[INFO] [stdout]    |
[INFO] [stdout] 63 |     fn trace_segment(&mut self, mut pos: Point, mut dir: Dir) -> Option<(Point, Dir, char, usize)> {
[INFO] [stdout]    |                                                 ----^^^
[INFO] [stdout]    |                                                 |
[INFO] [stdout]    |                                                 help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> examples/part17.rs:65:14
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let (mut dir, cmd) = {
[INFO] [stdout]    |              ----^^^
[INFO] [stdout]    |              |
[INFO] [stdout]    |              help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> examples/part23.rs:167:21
[INFO] [stdout]     |
[INFO] [stdout] 167 |                     nics[nic_id].tx.send(send_bufs[i][2]);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 167 |                     let _ = nics[nic_id].tx.send(send_bufs[i][2]);
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `acc` is never read
[INFO] [stdout]  --> examples/part17.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | struct Camera {
[INFO] [stdout]   |        ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 8 |     acc: String,
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> examples/part14.rs:178:12
[INFO] [stdout]     |
[INFO] [stdout] 178 |         if (upper - lower <= 1) {
[INFO] [stdout]     |            ^                  ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 178 -         if (upper - lower <= 1) {
[INFO] [stdout] 178 +         if upper - lower <= 1 {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> examples/part5.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 158 |     for i in 0..2 {
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `aoc2019` (example "part23") due to 1 previous error; 12 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused import: `std::iter::FromIterator`
[INFO] [stdout]  --> examples/part3_1.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::iter::FromIterator;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> examples/part5.rs:70:21
[INFO] [stdout]    |
[INFO] [stdout] 70 |                     std::io::stdout().lock().flush();
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 70 |                     let _ = std::io::stdout().lock().flush();
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> examples/part5.rs:72:21
[INFO] [stdout]    |
[INFO] [stdout] 72 |                     context.input.read_line(&mut input);
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 72 |                     let _ = context.input.read_line(&mut input);
[INFO] [stdout]    |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> examples/part22.rs:18:26
[INFO] [stdout]    |
[INFO] [stdout] 18 |             StackOp::Cut(mut p) => {
[INFO] [stdout]    |                          ----^
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `input1_1` is never used
[INFO] [stdout]   --> examples/part22.rs:84:4
[INFO] [stdout]    |
[INFO] [stdout] 84 | fn input1_1() -> (&'static [u8], usize) {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `input1_2` is never used
[INFO] [stdout]    --> examples/part22.rs:102:4
[INFO] [stdout]     |
[INFO] [stdout] 102 | fn input1_2() -> (&'static [u8], usize) {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `input1_3` is never used
[INFO] [stdout]    --> examples/part22.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn input1_3() -> (&'static [u8], usize) {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> examples/part24.rs:53:10
[INFO] [stdout]    |
[INFO] [stdout] 53 |     for (i, pat) in PATTERN.iter().enumerate() {
[INFO] [stdout]    |          ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `data`
[INFO] [stdout]    --> examples/part18.rs:107:9
[INFO] [stdout]     |
[INFO] [stdout] 107 |     let data = data18();
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_data`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "00c3cfb0e5790d6ed0721bb1dfd6705801c8587405decfbb89fe085acd27b058", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "00c3cfb0e5790d6ed0721bb1dfd6705801c8587405decfbb89fe085acd27b058", kill_on_drop: false }`
[INFO] [stdout] 00c3cfb0e5790d6ed0721bb1dfd6705801c8587405decfbb89fe085acd27b058
